/** @file         lzm_logal_api.h
 *  @brief        简要说明
 *  @details      详细说明
 *  @author       lzm
 *  @date         2022-10-25 12:49:43
 *  @version      v1.0
 *  @copyright    Copyright By lizhuming, All Rights Reserved
 *
 **********************************************************
 *  @LOG 修改日志:
 **********************************************************
*/

#ifndef __LZM_LOGAL_API__
#define __LZM_LOGAL_API__

// #include <stdint.h>
// #include <stddef.h>
// #include <stdbool.h>

#define LZM_LOG_ENABLE

#ifndef LZM_LOG_ENABLE

#else

#include "lzm_mlog_api.h"

/* LEVEL */
#define LZM_LOG_LVL_ASSERT      LZM_MLOG_LVL_ASSERT
#define LZM_LOG_LVL_ERROR       LZM_MLOG_LVL_ERROR
#define LZM_LOG_LVL_WARN        LZM_MLOG_LVL_WARN
#define LZM_LOG_LVL_INFO        LZM_MLOG_LVL_INFO
#define LZM_LOG_LVL_DEBUG       LZM_MLOG_LVL_DEBUG
#define LZM_LOG_LVL_VERBOSE     LZM_MLOG_LVL_VERBOSE
#define LZM_LOG_LVL_TOAL_NUM    LZM_MLOG_LVL_NUM

/* FMT */
#define LZM_LOG_FMT_LVL         LZM_MLOG_FMT_LVL 
#define LZM_LOG_FMT_TAG         LZM_MLOG_FMT_TAG 
#define LZM_LOG_FMT_TIME        LZM_MLOG_FMT_TIME
#define LZM_LOG_FMT_FILE        LZM_MLOG_FMT_FILE
#define LZM_LOG_FMT_TASK        LZM_MLOG_FMT_TASK
#define LZM_LOG_FMT_FUNC        LZM_MLOG_FMT_FUNC
#define LZM_LOG_FMT_LINE        LZM_MLOG_FMT_LINE

#define LZM_LOG_FMT_ALL         LZM_MLOG_FMT_ALL

/* FUNC */
#define LZM_LOG_PRINTF          LZM_MLOG_PRINTF_TAG
#define LZM_LOG_ASSERT          LZM_MLOG_ASSERT

#define LZM_LOG(level, ...)     LZM_LOG_PRINTF(level, LZM_MLOG_FMT_LVL|LZM_MLOG_FMT_TAG|LZM_MLOG_FMT_FUNC|LZM_MLOG_FMT_LINE, "MLOG", ##__VA_ARGS__)
#define LZM_LOG_TAG(level, tag, ...)     LZM_LOG_PRINTF(level, LZM_MLOG_FMT_LVL|LZM_MLOG_FMT_TAG|LZM_MLOG_FMT_FUNC|LZM_MLOG_FMT_LINE, tag, ##__VA_ARGS__)

#endif

#endif /* Head define end*/

